/* Títulos e destaques com Space Grotesk Bold */
h1, h2, h3, h4, h5, h6 {
  font-family: 'Space Grotesk', sans-serif;
  font-weight: 700;
}

/* Textos corridos com Mulish Regular */
body, span, div {
  font-family: 'Mulish', sans-serif;
  font-weight: 400;
}

/* Tamanho da fonte para elementos <p> */
p {
  font-size: 20px; /* Ajuste o tamanho da fonte conforme necessário */
}

/* Reset de estilos básicos */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

/* Estilo dos botões */
.btn {
  cursor: pointer;
}

/* Propriedades flexíveis */
.elemento {
  display: -webkit-box;  /* Safari e iOS */
  display: -moz-box;     /* Firefox antigo */
  display: -ms-flexbox;  /* IE 10 */
  display: -webkit-flex; /* Versão antiga do Safari (6.1 - 9) */
  display: flex;         /* Padrão */
}

/* Gradiente linear */
.fundo {
  background: -webkit-linear-gradient(red, blue); /* Safari e Chrome */
  background: -moz-linear-gradient(red, blue);    /* Firefox */
  background: -o-linear-gradient(red, blue);      /* Opera */
  background: linear-gradient(red, blue);         /* Padrão */
}

/* Animação */
.box {
  -webkit-animation: mymove 5s infinite; /* Safari e Chrome */
  animation: mymove 5s infinite;         /* Padrão */
}

/* Transição */
.box {
  -webkit-transition: width 2s; /* Safari e Chrome */
  transition: width 2s;         /* Padrão */
}

/* Box Shadow */
.shadow {
  -webkit-box-shadow: 10px 10px 5px 0px rgba(0,0,0,0.75); /* Safari e Chrome */
  -moz-box-shadow: 10px 10px 5px 0px rgba(0,0,0,0.75);    /* Firefox */
  box-shadow: 10px 10px 5px 0px rgba(0,0,0,0.75);         /* Padrão */
}

/* Transformação */
.box {
  -webkit-transform: rotate(20deg); /* Safari e Chrome */
  -ms-transform: rotate(20deg);     /* IE 9 */
  transform: rotate(20deg);         /* Padrão */
}

/* Estilo do banner */
.banner {
  background-image: url('imagens/1920x1080/Banner Pagina Aplicativo - 001.png');
  background-size: 100% 100%; /* Isso garante que a imagem cubra todo o espaço do banner */
  background-repeat: no-repeat;
  background-position: center; /* Centraliza a imagem */
  color: black;
  text-align: right;
  padding: 100px 20px 100px 50px;
  height: 25cm; /* Altura definida para 20cm */
}

/* Estilizando o ícone do menu responsivo */
.menu-btn {
  position: absolute;
  top: 0;
  right: 25px; /* Alterando de 'left' para 'right' */
  font-size: 36px;
  cursor: pointer;
  z-index: 2;
}



/* CSS para dispositivos móveis */
@media only screen and (max-width: 600px) {
  /* Estilo do banner para dispositivos móveis */
  .banner {
    padding: 50px 40px !important; /* Ajusta o padding */
    height: auto !important; /* Altura automática para se ajustar ao conteúdo */
    background-size: cover !important; /* Ajusta o background para cobrir toda a área */
    text-align: center; /* Centraliza o texto */
    display: flex; /* Ativa o modelo flexbox */
    justify-content: center; /* Centraliza horizontalmente */
    align-items: center; /* Centraliza verticalmente */
  }

  /* Oculta os parágrafos dentro da div .content em dispositivos móveis */
  .banner .content p {
    display: none !important; /* Oculta os parágrafos */
  }

  /* Exibe apenas os títulos e imagens dentro da div .content em dispositivos móveis */
  .banner .content h1,
  .banner .content img {
    display: block !important; /* Exibe os títulos e imagens */
    max-width: 100% !important; /* Garante que as imagens não ultrapassem a largura do conteúdo */
    margin: 0 auto !important; /* Centraliza o h1 horizontalmente */
    font-size: 45px !important; /* Ajusta o tamanho do h1 */
  }
}


.menu ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  justify-content: left;
  align-items: center; /* Alinha os itens verticalmente */
  margin-top: -80px; /* Ajusta o menu mais para cima */
}

.menu ul .logo {
  margin-right: 60px; /* Espaçamento à esquerda do logotipo */
}

.menu ul li {
  margin: 0 50px; /* Adiciona espaçamento entre os itens do menu */
}

.menu ul li a {
  color: black; /* Cor do texto do menu */
  text-decoration: none;
  font-weight: none;
  font-size: 18px;
  transition: color 0.3s;
}

.menu ul li a:hover {
  color: rgba(255, 255, 255, 0.8); /* Cor do texto do menu ao passar o mouse */
}

.banner h1 {
  font-size: 36px;
}

.banner p {
  font-size: 18px;
  margin-bottom: 20px;
}

.buttons {
  display: flex;
  align-items: center; /* Alinha os itens verticalmente */
  margin-top: 20px;
}

.buttons p {
  margin-right: 20px; /* Adiciona espaçamento entre o texto e as imagens */
}

.buttons img {
  width: 150px; /* Ajuste o tamanho conforme necessário */
}

/* Estilo dos cards */
.features {
  display: flex;
  justify-content: left; /* Centralizando os cards horizontalmente */
  padding: 50px 0; /* Adicionando espaçamento vertical entre os cards */
}

.card {
  flex-basis: calc(25% - 0.5cm); /* Definindo a largura dos cards com 1cm de espaçamento entre eles */
  margin: 0 0.25cm; /* Adicionando espaçamento lateral entre os cards */
  padding: 15px;
  border-radius: 8px;
  text-align: center;
}

.card img {
  width: 100%;
  border-radius: 8px;
}

.card .icon img {
  width: 40px;
}

.card h3 {
  font-weight: bold;
  font-size: 20px;
}

.card p {
  font-size: 14px;
}

/* Estilo do campo Explore */
.explore {
  text-align: center;
  padding: 50px 0;
}

.explore h2 {
  margin-bottom: 20px;
}

/* Estilo do footer */
footer {
  text-align: center;
  padding: 20px 0;
}

footer img {
  max-width: 90%;
  margin-bottom: 10px;
}



/* Estilo do botão Contato */
.btn-success {
  color: #000000;
  background-color: #33D38A;
  border-color: #33D38A;
  font-size: 18px; /* Reduz o tamanho da fonte */
  padding: 8px 16px; /* Reduz o espaçamento interno do botão */
}

/* Cor Padrão Botão Verde Esmeralda */
.btn-success:hover {
  background-color: #33D38A;
  border-color: #33D38A;
}

/* Estilo da seção Saiba Mais */
.saiba-mais {
  background-color: #335956; /* Cor de fundo verde */
  background-size: cover;
  color: #fff;
  text-align: center;
  padding: 100px 20px;
  height: 10cm; /* Altura da seção */
}

.saiba-mais .content {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.saiba-mais h2 {
  font-size: 24px;
  margin-bottom: 20px;
}

.saiba-mais h2 span {
  font-weight: bold;
}

.saiba-mais h2 span:first-child {
  color: #28a745; /* Cor verde claro */
}

.saiba-mais p {
  font-size: 18px;
  margin-bottom: 20px;
}

.saiba-mais .btn {
  padding: 10px 20px;
  border: 1px solid #fff;
  background-color: transparent;
  color: #fff;
  cursor: pointer;
}

.saiba-mais .btn:hover {
  background-color: rgba(255, 255, 255, 0.2); /* Cor de fundo ao passar o mouse */
}


/* CSS para dispositivos móveis */
@media only screen and (max-width: 600px) {
  /* Ajusta o padding para dispositivos móveis */
  .saiba-mais {
    padding: 50px 20px;
    height: auto; /* Altura automática para se ajustar ao conteúdo */
  }

  /* Ajusta o tamanho da fonte para dispositivos móveis */
  .saiba-mais h1 {
    font-size: 1.2em;
  }

  .saiba-mais p {
    font-size: 1em;
    margin: 10px 0; /* Ajusta o espaçamento entre os parágrafos */
    column-count: 2; /* Divide o texto em duas colunas */
    column-gap: 20px; /* Define o espaçamento entre as colunas */
  }
}

.feature-item {
  text-align: center;
  position: relative; /* Adiciona posição relativa para facilitar a sobreposição */
  overflow: hidden; /* Esconde qualquer conteúdo adicional que exceda os limites */
}

.feature-item img {
  max-width: 100%;
  height: auto;
  margin-bottom: 20px;
  transition: transform 0.3s ease; /* Adiciona uma transição suave */
}

.feature-item:hover img {
  transform: scale(1.1); /* Aumenta ligeiramente o tamanho da imagem ao passar o mouse */
}


/* Estilo ESPECILIDADES NOVO */
#imagem-celular {
  max-width: 60%; /* Definindo o tamanho da imagem */
  height: auto; /* Mantém a proporção da imagem */
  margin-left: 200px;
}


.imagem-esquerda {
  margin-right: 0; /* Move a imagem para a esquerda e aumenta a margem direita */
  margin-left: 200px; /* Reseta a margem esquerda para garantir que não haja margem direita */
}

.imagem-direita {
  margin-left: auto; /* Move a imagem para a direita */
  margin-right: 0; /* Reseta a margem direita para garantir que não haja margem esquerda */
}

#botoes-mobile {
  display: flex;
  flex-wrap: wrap;
  justify-content: center; /* Alinha os botões centralmente */
  margin-bottom: 20px; /* Adiciona um espaçamento inferior */
}

#botoes-mobile button {
  margin-right: 30px; /* Adiciona espaçamento entre os botões */
  margin-bottom: 30px; /* Adiciona espaçamento inferior entre os botões */
}

/* Estilo para reduzir o espaçamento entre a imagem e o texto e movê-lo um pouco para cima */
.col-md-6 {
  display: flex;
  flex-direction: column;
  justify-content: flex-start; /* Alinhando o conteúdo ao topo */
  align-items: left; /* Alinhando o conteúdo ao centro horizontalmente */
  margin-top: 20px; /* Ajustando o espaçamento superior */
}

/* Estilo do texto ao lado da imagem */
.col-md-6 h1 {
  margin-top: 50px; /* Reduzindo o espaçamento superior do título e do parágrafo */
  margin-bottom: 20px; /* Aumentando a margem inferior */
}

.col-md-6 p {
  margin-top: 20px; /* Reduzindo o espaçamento superior do título e do parágrafo */
  margin-bottom: 10px; /* Aumentando a margem inferior */
}

.texto-conteudo {
  text-align: left; /* Alinha o texto à direita */
}

#botoes-controle {
  visibility: visible !important;
  display: flex;
  justify-content: center;
  margin: 50px;
}

/* Definição Botão Saiba Mais */
.btn-informacoes {
  color: black;
  font-weight: bold;
}

.btn-informacoes:hover {
  color: #33D38A;
}

/* CSS responsivo para dispositivos móveis */
@media only screen and (max-width: 600px) {
  /* Ajusta o posicionamento e o tamanho da imagem celular para dispositivos móveis */
  #imagem-celular {
    max-width: 80%; /* Definindo o tamanho máximo da imagem para preencher a largura */
    margin-left: 0; /* Remove a margem esquerda */
  }

  /* Ajusta o posicionamento das imagens e dos botões para dispositivos móveis */
  .imagem-esquerda,
  .imagem-direita {
    margin-left: auto; /* Move as imagens para a direita */
    margin-right: auto; /* Move as imagens para a esquerda */
  }

  /* Ajusta o espaçamento entre os botões para dispositivos móveis */
  #botoes-mobile button {
    margin-right: 10px; /* Reduz o espaçamento entre os botões */
    margin-bottom: 10px; /* Reduz o espaçamento inferior entre os botões */
  }

  /* Ajusta o espaçamento superior do título e do parágrafo para dispositivos móveis */
  .col-md-6 h1 {
    margin-top: 20px; /* Reduz o espaçamento superior do título */
    margin-bottom: 10px; /* Reduz o espaçamento inferior do título */
  }

  .col-md-6 p {
    margin-top: 10px; /* Reduz o espaçamento superior do parágrafo */
    margin-bottom: 10px; /* Reduz o espaçamento inferior do parágrafo */
  }

  /* Ajusta o alinhamento do texto para dispositivos móveis */
  .texto-conteudo {
    text-align: center; /* Centraliza o texto */
  }

  /* Ajusta o espaçamento do contêiner de controle para dispositivos móveis */
  #botoes-controle {
    margin-top: 20px; /* Reduz o espaçamento superior */
    margin-bottom: 20px; /* Reduz o espaçamento inferior */
  }
}

/* CSS para dispositivos móveis */
@media only screen and (max-width: 600px) {
  /* Ajusta o layout para dispositivos móveis */
  .funcionalidades .container .row {
    flex-direction: column-reverse; /* Inverte a direção das colunas para colocar a imagem abaixo do texto */
  }

  /* Ajusta a largura da imagem para dispositivos móveis */
  .funcionalidades .container .col-md-6 img {
    width: 80%; /* Define a largura da imagem como 100% */
    margin-top: 20px; /* Adiciona um espaçamento superior para separar o texto da imagem */
  }

  /* Ajusta o estilo do texto para dispositivos móveis */
  .funcionalidades .container .col-md-6 {
    padding-right: 20px; /* Adiciona um espaçamento à direita para separar o texto da borda */
  }
}

/* CSS para dispositivos móveis */
@media only screen and (max-width: 600px) {
  /* Oculta a imagem em dispositivos móveis */
  .funcionalidades .container .col-md-6 img {
    display: none;
  }
}

/* CSS para dispositivos móveis */
@media only screen and (max-width: 600px) {
  /* Oculta os links rápidos em dispositivos móveis */
  footer .col-md-3 {
    display: none;
  }

  /* Reduz o tamanho do texto do direito autoral em dispositivos móveis */
  footer p {
    font-size: 12px;
  }

  /* Reduz o tamanho do logo em dispositivos móveis */
  footer img {
    max-width: 80px;
  }

  /* Exibe o logo em dispositivos móveis */
  footer .col-md-3:first-child {
    display: block;
  }
}




/* Estilos para o formulário de contato */
#formulario-contato {
  max-width: 600px; /* Definindo a largura máxima do formulário */
  margin: 0 auto; /* Centralizando o formulário na página */
  margin-left: 0px; /* Adicionando uma margem à esquerda para alinhar o formulário */
}

/* Estilos para os campos de entrada */
.form-control {
  width: 100%; /* Definindo a largura dos campos de entrada */
  margin-bottom: 10px; /* Adicionando um espaçamento inferior entre os campos */
}

/* Estilos para a disposição dos campos */
.form-row {
  display: flex; /* Usando flexbox para alinhar os campos horizontalmente */
  flex-wrap: wrap; /* Permitindo que os campos sejam quebrados em uma nova linha se necessário */
}

.form-group {
  flex: 0 0 50%; /* Definindo a largura dos grupos de formulário para ocupar 50% da largura total */
  margin-bottom: 10px; /* Adicionando um espaçamento inferior entre os grupos de formulário */
}

/* Estilos para o botão de envio */
.ml-auto {
  margin-left: auto; /* Alinhando o botão de envio à direita */
  margin-right: 20px; /* Adicionando um espaçamento direito */
}




/* CSS para dispositivos móveis */
@media only screen and (max-width: 600px) {
 
  /* Estilo do sidebar para dispositivos móveis */
  .sidebar {
    position: fixed;
    top: 0;
    left: 0;
    width: 250px;
    height: 100%;
    background-color: #333; /* Cor de fundo do sidebar */
    padding-top: 20px;
    z-index: 1000; /* Garante que o sidebar esteja sobreposta a outros elementos */
    overflow-x: hidden;
    transition: 0.5s;
  }

  .sidebar a {
    padding: 10px 15px;
    text-decoration: none;
    font-size: 18px;
    color: white;
    display: block;
    transition: 0.3s;
  }

  .sidebar a.active {
    background-color: #4CAF50; /* Cor de fundo do item de menu ativo */
    color: white;
  }

  /* Altera a margem esquerda do conteúdo principal para acomodar o sidebar */
  .content {
    margin-left: 250px; /* Largura do sidebar */
  }

  /* Esconde o menu principal na versão mobile */
  .menu {
    display: none;
  }

  /* Mostra o menu quando a classe 'show' é aplicada */
  .menu.show {
    display: block;
  }

  /* Estilo do botão de menu para dispositivos móveis */
  .mobile-menu-button {
    display: block;
    position: fixed;
    top: 20px;
    left: 20px;
    cursor: pointer;
    z-index: 1500; /* Certifique-se de que o botão de menu esteja acima do sidebar */
  }

  .mobile-menu-button span {
    display: block;
    width: 30px;
    height: 4px;
    margin-bottom: 5px;
    background-color: white; /* Cor das barras do ícone do menu */
  }

  /* Estilo para quando o botão de menu estiver aberto */
  .mobile-menu-button.open span:nth-child(1) {
    transform: rotate(-45deg) translate(-9px, 6px);
  }

  .mobile-menu-button.open span:nth-child(2) {
    opacity: 0;
  }

  .mobile-menu-button.open span:nth-child(3) {
    transform: rotate(45deg) translate(-8px, -8px);
  }
}
